"""
__init__.py - 包的初始化文件（导入一个包的时候会自动执行）

任务：写一个函数，传入一个文件名（字符串），返回这个文件的后缀名

hello.py ---> py / .py
hello.py.txt ---> txt / .txt
.abc ---> 没有后缀名（返回空字符串）
abc. ---> 没有后缀名（返回空字符串）

suffix ---> 后缀 ---> post- / sub-
prefix ---> 前缀 ---> pre- / sup-

Author: Administrator
Date: 2024/1/22
"""


# 定义函数时，写在*前面的参数称为位置参数，调用函数传递参数时，只需要对号入座
# 写在*后面的参数称为命名关键字参数，调用函数传递参数时，必须要写成“参数名=参数值”的形式
def get_suffix(filename: str, *, has_dot: bool = False) -> str:
    """
    获取文件的后缀名

    :param filename: 文件名
    :param has_dot: 后缀名是否包含.
    :return: 后缀名
    """
    position = filename.rfind('.')
    if position <= 0:
        return ''
    if not has_dot:
        position = position + 1
    return filename[position:]
    # if position > 0:
    #     return filename[position + 1:]
    # return ''